// ==++==
// 
//   
//    Copyright (c) 2006 Microsoft Corporation.  All rights reserved.
//   
//    The use and distribution terms for this software are contained in the file
//    named license.txt, which can be found in the root of this distribution.
//    By using this software in any fashion, you are agreeing to be bound by the
//    terms of this license.
//   
//    You must not remove this notice, or any other, from this software.
//   
// 
// ==--==
// ===========================================================================
// File: guid.cpp
// 
// PALRT guids
// ===========================================================================

#include "rotor_palrt.h"

#undef DEFINE_GUID
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \
        EXTERN_C const GUID name \
                = { l, w1, w2, { b1, b2,  b3,  b4,  b5,  b6,  b7,  b8 } }

#define _MIDL_USE_GUIDDEF_

DEFINE_GUID(GUID_NULL, 0x00000000, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00);

DEFINE_GUID(IID_IUnknown, 0x00000000, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46);

DEFINE_GUID(IID_IMalloc, 0x0000001d, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46);

DEFINE_GUID(IID_IClassFactory, 0x00000001, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46);

DEFINE_GUID(IID_INativeImageEvaluate, 0x65aa013, 0x9bdc, 0x447c, 0x92, 0x2f, 0xfe, 0xe9, 0x29, 0x90, 0x84, 0x47);

DEFINE_GUID(IID_IServiceProvider, 0x6d5140c1, 0x7436, 0x11ce, 0x80, 0x34, 0x00, 0xaa, 0x00, 0x60, 0x09, 0xfa);

DEFINE_GUID(IID_ISequentialStream, 0x0c733a30, 0x2a1c, 0x11ce, 0xad, 0xe5, 0x00, 0xaa, 0x00, 0x44, 0x77, 0x3d);

DEFINE_GUID(IID_IStream, 0x0000000c, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46);

DEFINE_GUID(IID_IXMLNodeSource, 0xd242361d, 0x51a0, 0x11d2, 0x9C, 0xAF, 0x00, 0x60, 0xB0, 0xec, 0x3d, 0x39);

DEFINE_GUID(IID_IXMLParser, 0xd242361e, 0x51a0, 0x11d2, 0x9C, 0xAF, 0x00, 0x60, 0xB0, 0xec, 0x3d, 0x39);

DEFINE_GUID(IID_IXMLNodeFactory, 0xd242361f, 0x51a0, 0x11d2, 0x9C, 0xAF, 0x00, 0x60, 0xB0, 0xec, 0x3d, 0x39);

DEFINE_GUID(IID_IErrorInfo, 0x1CF2B120, 0x547D, 0x101B, 0x8E, 0x65, 0x08, 0x00, 0x2B, 0x2B, 0xD1, 0x19);

DEFINE_GUID(IID_ISupportErrorInfo, 0xDF0B3D60, 0x548F, 0x101B, 0x8E, 0x65, 0x08, 0x00, 0x2B, 0x2B, 0xD1, 0x19);

DEFINE_GUID(IID_ICreateErrorInfo, 0x22F03340, 0x547D, 0x101B, 0x8E, 0x65, 0x08, 0x00, 0x2B, 0x2B, 0xD1, 0x19);

// {BED7F4EA-1A96-11d2-8F08-00A0C9A6186D}
DEFINE_GUID(LIBID_ComPlusRuntime, 0xbed7f4ea, 0x1a96, 0x11d2, 0x8f, 0x8, 0x0, 0xa0, 0xc9, 0xa6, 0x18, 0x6d);

// {90883F05-3D28-11D2-8F17-00A0C9A6186D}
DEFINE_GUID(GUID_ExportedFromComPlus, 0x90883f05, 0x3d28, 0x11d2, 0x8f, 0x17, 0x0, 0xa0, 0xc9, 0xa6, 0x18, 0x6d);

// {0F21F359-AB84-41e8-9A78-36D110E6D2F9}
DEFINE_GUID(GUID_ManagedName, 0xf21f359, 0xab84, 0x41e8, 0x9a, 0x78, 0x36, 0xd1, 0x10, 0xe6, 0xd2, 0xf9);

// {54FC8F55-38DE-4703-9C4E-250351302B1C}
DEFINE_GUID(GUID_Function2Getter, 0x54fc8f55, 0x38de, 0x4703, 0x9c, 0x4e, 0x25, 0x3, 0x51, 0x30, 0x2b, 0x1c);

// CLSID_CorMetaDataDispenserRuntime: {1EC2DE53-75CC-11d2-9775-00A0C9B4D50C}
// Dispenser coclass for version 1.5 and 2.0 meta data. To get the "latest" bind
// to CLSID_MetaDataDispenser.
DEFINE_GUID(CLSID_CorMetaDataDispenserRuntime, 0x1ec2de53, 0x75cc, 0x11d2, 0x97, 0x75, 0x0, 0xa0, 0xc9, 0xb4, 0xd5, 0xc);


// CLSID_CLR_v1_MetaData: {005023CA-72B1-11D3-9FC4-00C04F79A0A3}
//  Used to generate v1 metadata (for v1.0 and v1.1 CLR compatibility).
DEFINE_GUID(CLSID_CLR_v1_MetaData, 0x005023ca, 0x72b1, 0x11d3, 0x9f, 0xc4, 0x0, 0xc0, 0x4f, 0x79, 0xa0, 0xa3);

// CLSID_CLR_v2_MetaData: {EFEA471A-44FD-4862-9292-0C58D46E1F3A}
//  Used to generate v1 metadata (for v1.0 and v1.1 CLR compatibility).
DEFINE_GUID(CLSID_CLR_v2_MetaData, 0xefea471a, 0x44fd, 0x4862, 0x92, 0x92, 0xc, 0x58, 0xd4, 0x6e, 0x1f, 0x3a);


DEFINE_GUID(CLSID_HostGCManager_Remove, 0x4E2150DE, 0x6A22, 0x488F, 0xBE, 0x19, 0x14, 0x5D, 0xC3, 0x03, 0x90, 0x2E);


// {30FE7BE8-D7D9-11D2-9F80-00C04F79A0A3}
DEFINE_GUID(MetaDataCheckDuplicatesFor, 0x30fe7be8, 0xd7d9, 0x11d2, 0x9f, 0x80, 0x0, 0xc0, 0x4f, 0x79, 0xa0, 0xa3);

// {DE3856F8-D7D9-11D2-9F80-00C04F79A0A3}
DEFINE_GUID(MetaDataRefToDefCheck, 0xde3856f8, 0xd7d9, 0x11d2, 0x9f, 0x80, 0x0, 0xc0, 0x4f, 0x79, 0xa0, 0xa3);

// {E5D71A4C-D7DA-11D2-9F80-00C04F79A0A3}
DEFINE_GUID(MetaDataNotificationForTokenMovement, 0xe5d71a4c, 0xd7da, 0x11d2, 0x9f, 0x80, 0x0, 0xc0, 0x4f, 0x79, 0xa0, 0xa3);


// {2eee315c-d7db-11d2-9f80-00c04f79a0a3}
DEFINE_GUID(MetaDataSetUpdate, 0x2eee315c, 0xd7db, 0x11d2, 0x9f, 0x80, 0x0, 0xc0, 0x4f, 0x79, 0xa0, 0xa3);

// Use this guid in SetOption to indicate if the import enumerator should skip over
// delete items or not. The default is yes.
//
// {79700F36-4AAC-11d3-84C3-009027868CB1}
DEFINE_GUID(MetaDataImportOption, 0x79700f36, 0x4aac, 0x11d3, 0x84, 0xc3, 0x0, 0x90, 0x27, 0x86, 0x8c, 0xb1);


// Use this guid in the SetOption if compiler wants to have MetaData API to take reader/writer lock
// CorThreadSafetyOptions.
// {F7559806-F266-42ea-8C63-0ADB45E8B234}
DEFINE_GUID(MetaDataThreadSafetyOptions, 0xf7559806, 0xf266, 0x42ea, 0x8c, 0x63, 0xa, 0xdb, 0x45, 0xe8, 0xb2, 0x34);


// Use this guid in the SetOption if compiler wants error when some tokens are emitted out of order
// {1547872D-DC03-11d2-9420-0000F8083460}
DEFINE_GUID(MetaDataErrorIfEmitOutOfOrder, 0x1547872d, 0xdc03, 0x11d2, 0x94, 0x20, 0x0, 0x0, 0xf8, 0x8, 0x34, 0x60);


// Use this guid in the SetOption to indicate if the tlbimporter should generate the
// TCE adapters for COM connection point containers.
// {DCC9DE90-4151-11d3-88D6-00902754C43A}
DEFINE_GUID(MetaDataGenerateTCEAdapters, 0xdcc9de90, 0x4151, 0x11d3, 0x88, 0xd6, 0x0, 0x90, 0x27, 0x54, 0xc4, 0x3a);


// Use this guid in the SetOption to specifiy a non-default namespace for typelib import.
// {F17FF889-5A63-11d3-9FF2-00C04FF7431A}
DEFINE_GUID(MetaDataTypeLibImportNamespace, 0xf17ff889, 0x5a63, 0x11d3, 0x9f, 0xf2, 0x0, 0xc0, 0x4f, 0xf7, 0x43, 0x1a);

// Use this guid in the SetOption to specify the behavior of UnmarkAll. See CorLinkerOptions.
// {47E099B6-AE7C-4797-8317-B48AA645B8F9}
DEFINE_GUID(MetaDataLinkerOptions, 0x47e099b6, 0xae7c, 0x4797, 0x83, 0x17, 0xb4, 0x8a, 0xa6, 0x45, 0xb8, 0xf9);

// Use this guid in the SetOption to specify the runtime version stored in the CLR metadata.
// {47E099B7-AE7C-4797-8317-B48AA645B8F9}
DEFINE_GUID(MetaDataRuntimeVersion, 0x47e099b7, 0xae7c, 0x4797, 0x83, 0x17, 0xb4, 0x8a, 0xa6, 0x45, 0xb8, 0xf9);

// Use this guid in the SetOption to specify the behavior of the merger.
// {132D3A6E-B35D-464e-951A-42EFB9FB6601}
DEFINE_GUID(MetaDataMergerOptions, 0x132d3a6e, 0xb35d, 0x464e, 0x95, 0x1a, 0x42, 0xef, 0xb9, 0xfb, 0x66, 0x1);

// CLSID_Cor: {bee00000-ee77-11d0-a015-00c04fbbb884}
DEFINE_GUID(CLSID_Cor, 0xbee00010, 0xee77, 0x11d0, 0xa0, 0x15, 0x00, 0xc0, 0x4f, 0xbb, 0xb8, 0x84);

// CLSID_CorMetaDataDispenser: {E5CB7A31-7512-11d2-89CE-0080C792E5D8}
// This is the "Master Dispenser", always guaranteed to be the most recent
// dispenser on the machine.
DEFINE_GUID(CLSID_CorMetaDataDispenser, 0xe5cb7a31, 0x7512, 0x11d2, 0x89, 0xce, 0x0, 0x80, 0xc7, 0x92, 0xe5, 0xd8);


// CLSID_CorMetaDataDispenserReg: {435755FF-7397-11d2-9771-00A0C9B4D50C}
// Dispenser coclass for version 1.0 meta data. To get the "latest" bind
// to CLSID_CorMetaDataDispenser.
DEFINE_GUID(CLSID_CorMetaDataDispenserReg, 0x435755ff, 0x7397, 0x11d2, 0x97, 0x71, 0x0, 0xa0, 0xc9, 0xb4, 0xd5, 0xc);


// CLSID_CorMetaDataReg: {87F3A1F5-7397-11d2-9771-00A0C9B4D50C}
// For COM+ Meta Data, Data Driven Registration
DEFINE_GUID(CLSID_CorMetaDataReg, 0x87f3a1f5, 0x7397, 0x11d2, 0x97, 0x71, 0x0, 0xa0, 0xc9, 0xb4, 0xd5, 0xc);

// IID_IMetaDataInternal {39EE28B3-0181-4d48-B53C-2FFAFFD5FEC1}
DEFINE_GUID(IID_IMetaDataInternal, 0x39ee28b3, 0x181, 0x4d48, 0xb5, 0x3c, 0x2f, 0xfa, 0xff, 0xd5, 0xfe, 0xc1);

//-------------------------------------
//--- IMetaDataError
//-------------------------------------
//---
// {B81FF171-20F3-11d2-8DCC-00A0C9B09C19}
DEFINE_GUID(IID_IMetaDataError, 0xb81ff171, 0x20f3, 0x11d2, 0x8d, 0xcc, 0x0, 0xa0, 0xc9, 0xb0, 0x9c, 0x19);

//-------------------------------------
//--- IMapToken
//-------------------------------------
//---
// IID_IMapToken: {06A3EA8B-0225-11d1-BF72-00C04FC31E12}
DEFINE_GUID(IID_IMapToken, 0x6a3ea8b, 0x225, 0x11d1, 0xbf, 0x72, 0x0, 0xc0, 0x4f, 0xc3, 0x1e, 0x12);

//-------------------------------------
//--- IMetaDataDispenser
//-------------------------------------
//---
// {B81FF171-20F3-11d2-8DCC-00A0C9B09C19}
DEFINE_GUID(IID_IMetaDataDispenser, 0x809c652e, 0x7396, 0x11d2, 0x97, 0x71, 0x0, 0xa0, 0xc9, 0xb4, 0xd5, 0xc);

//-------------------------------------
//--- IMetaDataEmit
//-------------------------------------

// {BA3FEE4C-ECB9-4e41-83B7-183FA41CD859}
DEFINE_GUID(IID_IMetaDataEmit, 0xba3fee4c, 0xecb9, 0x4e41, 0x83, 0xb7, 0x18, 0x3f, 0xa4, 0x1c, 0xd8, 0x59);
// {F5DD9950-F693-42e6-830E-7B833E8146A9}
DEFINE_GUID(IID_IMetaDataEmit2, 0xf5dd9950, 0xf693, 0x42e6, 0x83, 0xe, 0x7b, 0x83, 0x3e, 0x81, 0x46, 0xa9);
DEFINE_GUID(IID_IMetaDataEmit2_TRANSITIONAL, 0xf854944f, 0xee57, 0x4736, 0xb9, 0x3c, 0xa6, 0x57, 0xe2, 0xbf, 0x63, 0x2f);

//-------------------------------------
//--- IMetaDataImport
//-------------------------------------
// {7DAC8207-D3AE-4c75-9B67-92801A497D44}
DEFINE_GUID(IID_IMetaDataImport, 0x7dac8207, 0xd3ae, 0x4c75, 0x9b, 0x67, 0x92, 0x80, 0x1a, 0x49, 0x7d, 0x44);
// {FCE5EFA0-8BBA-4f8e-A036-8F2022B08466}
DEFINE_GUID(IID_IMetaDataImport2, 0xfce5efa0, 0x8bba, 0x4f8e, 0xa0, 0x36, 0x8f, 0x20, 0x22, 0xb0, 0x84, 0x66);
DEFINE_GUID(IID_IMetaDataImport2_TRANSITIONAL, 0xd26df2ea, 0x7f58, 0x4183, 0x86, 0xbe, 0x30, 0xae, 0x29, 0xa7, 0x5d, 0x8d);

//-------------------------------------
//--- IMetaDataFilter
//-------------------------------------

// {D0E80DD1-12D4-11d3-B39D-00C04FF81795}
DEFINE_GUID(IID_IMetaDataFilter, 0xd0e80dd1, 0x12d4, 0x11d3, 0xb3, 0x9d, 0x0, 0xc0, 0x4f, 0xf8, 0x17, 0x95);

//-------------------------------------
//--- IHostFilter
//-------------------------------------

// {D0E80DD3-12D4-11d3-B39D-00C04FF81795}
DEFINE_GUID(IID_IHostFilter, 0xd0e80dd3, 0x12d4, 0x11d3, 0xb3, 0x9d, 0x0, 0xc0, 0x4f, 0xf8, 0x17, 0x95);

//--------------------------------------
//--- IMetaDataConverter
//--------------------------------------
// {D9DEBD79-2992-11d3-8BC1-0000F8083A57}
DEFINE_GUID(IID_IMetaDataConverter, 0xd9debd79, 0x2992, 0x11d3, 0x8b, 0xc1, 0x0, 0x0, 0xf8, 0x8, 0x3a, 0x57);


// {211EF15B-5317-4438-B196-DEC87B887693}
DEFINE_GUID(IID_IMetaDataAssemblyEmit, 0x211ef15b, 0x5317, 0x4438, 0xb1, 0x96, 0xde, 0xc8, 0x7b, 0x88, 0x76, 0x93);

// {EE62470B-E94B-424e-9B7C-2F00C9249F93}
DEFINE_GUID(IID_IMetaDataAssemblyImport, 0xee62470b, 0xe94b, 0x424e, 0x9b, 0x7c, 0x2f, 0x0, 0xc9, 0x24, 0x9f, 0x93);

// {4709C9C6-81FF-11D3-9FC7-00C04F79A0A3}
DEFINE_GUID(IID_IMetaDataValidate, 0x4709c9c6, 0x81ff, 0x11d3, 0x9f, 0xc7, 0x0, 0xc0, 0x4f, 0x79, 0xa0, 0xa3);

// {31BCFCE2-DAFB-11D2-9F81-00C04F79A0A3}
DEFINE_GUID(IID_IMetaDataDispenserEx, 0x31bcfce2, 0xdafb, 0x11d2, 0x9f, 0x81, 0x0, 0xc0, 0x4f, 0x79, 0xa0, 0xa3);

// {7ED1BDFF-8E36-11d2-9C56-00A0C9B7CC45}
DEFINE_GUID(IID_ICeeGen, 0x7ed1bdff, 0x8e36, 0x11d2, 0x9c, 0x56, 0x0, 0xa0, 0xc9, 0xb7, 0xcc, 0x45);

//-------------------------------------
//--- ICorModule
//-------------------------------------
// {2629F8E1-95E5-11d2-9C56-00A0C9B7CC45}
DEFINE_GUID(IID_ICorModule, 0x2629f8e1, 0x95e5, 0x11d2, 0x9c, 0x56, 0x0, 0xa0, 0xc9, 0xb7, 0xcc, 0x45);

//**********************************************************************
//--- IMetaDataTables
//-------------------------------------
// {D8F579AB-402D-4b8e-82D9-5D63B1065C68}
DEFINE_GUID(IID_IMetaDataTables, 0xd8f579ab, 0x402d, 0x4b8e, 0x82, 0xd9, 0x5d, 0x63, 0xb1, 0x6, 0x5c, 0x68);
// {BADB5F70-58DA-43a9-A1C6-D74819F19B15}
DEFINE_GUID(IID_IMetaDataTables2, 0xbadb5f70, 0x58da, 0x43a9, 0xa1, 0xc6, 0xd7, 0x48, 0x19, 0xf1, 0x9b, 0x15);

//-------------------------------------

// {0EA273D0-B4DA-4008-A60D-8D6EFFDD6E91}
DEFINE_GUID(IID_INativeImageInstallInfo, 0xea273d0, 0xb4da, 0x4008, 0xa6, 0xd, 0x8d, 0x6e, 0xff, 0xdd, 0x6e, 0x91);

// {74860182-3295-4954-8BD5-40B5C9E7C4EA}
DEFINE_GUID(IID_ICorDBPrivHelper, 0x74860182,0x3295,0x4954,0x8b,0xd5,0x40,0xb5,0xc9,0xe7,0xc4,0xea);

// {AD93D71D-E1F2-11d1-9409-0000F8083460}
DEFINE_GUID(IID_IMetaDataHelper, 0xad93d71d, 0xe1f2, 0x11d1, 0x94, 0x9, 0x0, 0x0, 0xf8, 0x8, 0x34, 0x60);

// {AD93D71E-E1F2-11d1-9409-0000F8083460}
DEFINE_GUID(IID_IMetaDataHelperOLD, 0xad93d71e, 0xe1f2, 0x11d1, 0x94, 0x9, 0x0, 0x0, 0xf8, 0x8, 0x34, 0x60);

// {5C240AE4-1E09-11d3-9424-0000F8083460}
DEFINE_GUID(IID_IMetaDataEmitHelper, 0x5c240ae4, 0x1e09, 0x11d3, 0x94, 0x24, 0x0, 0x0, 0xf8, 0x8, 0x34, 0x60);

// {848845BC-0C4A-42e3-8915-DC850112443D}
DEFINE_GUID(IID_ISNAssemblySignature, 0x848845BC, 0x0C4A, 0x42e3, 0x89, 0x15, 0xDC, 0x85, 0x01, 0x12, 0x44, 0x3D);

DEFINE_GUID(CorSym_LanguageType_C, 0x63a08714, 0xfc37, 0x11d2, 0x90, 0x4c, 0x0, 0xc0, 0x4f, 0xa3, 0x02, 0xa1);
DEFINE_GUID(CorSym_LanguageType_CPlusPlus, 0x3a12d0b7, 0xc26c, 0x11d0, 0xb4, 0x42, 0x0, 0xa0, 0x24, 0x4a, 0x1d, 0xd2);
DEFINE_GUID(CorSym_LanguageType_CSharp, 0x3f5162f8, 0x07c6, 0x11d3, 0x90, 0x53, 0x0, 0xc0, 0x4f, 0xa3, 0x02, 0xa1);
DEFINE_GUID(CorSym_LanguageType_Basic, 0x3a12d0b8, 0xc26c, 0x11d0, 0xb4, 0x42, 0x0, 0xa0, 0x24, 0x4a, 0x1d, 0xd2);
DEFINE_GUID(CorSym_LanguageType_Java, 0x3a12d0b4, 0xc26c, 0x11d0, 0xb4, 0x42, 0x0, 0xa0, 0x24, 0x4a, 0x1d, 0xd2);
DEFINE_GUID(CorSym_LanguageType_Cobol, 0xaf046cd1, 0xd0e1, 0x11d2, 0x97, 0x7c, 0x0, 0xa0, 0xc9, 0xb4, 0xd5, 0xc);
DEFINE_GUID(CorSym_LanguageType_Pascal, 0xaf046cd2, 0xd0e1, 0x11d2, 0x97, 0x7c, 0x0, 0xa0, 0xc9, 0xb4, 0xd5, 0xc);
DEFINE_GUID(CorSym_LanguageType_ILAssembly, 0xaf046cd3, 0xd0e1, 0x11d2, 0x97, 0x7c, 0x0, 0xa0, 0xc9, 0xb4, 0xd5, 0xc);
DEFINE_GUID(CorSym_LanguageType_JScript, 0x3a12d0b6, 0xc26c, 0x11d0, 0xb4, 0x42, 0x00, 0xa0, 0x24, 0x4a, 0x1d, 0xd2);
DEFINE_GUID(CorSym_LanguageType_SMC, 0xd9b9f7b, 0x6611, 0x11d3, 0xbd, 0x2a, 0x0, 0x0, 0xf8, 0x8, 0x49, 0xbd);
DEFINE_GUID(CorSym_LanguageType_MCPlusPlus, 0x4b35fde8, 0x07c6, 0x11d3, 0x90, 0x53, 0x0, 0xc0, 0x4f, 0xa3, 0x02, 0xa1);
DEFINE_GUID(CorSym_LanguageVendor_Microsoft, 0x994b45c4, 0xe6e9, 0x11d2, 0x90, 0x3f, 0x00, 0xc0, 0x4f, 0xa3, 0x02, 0xa1);
DEFINE_GUID(CorSym_DocumentType_Text, 0x5a869d0b, 0x6611, 0x11d3, 0xbd, 0x2a, 0x0, 0x0, 0xf8, 0x8, 0x49, 0xbd);
DEFINE_GUID(CorSym_DocumentType_MC,  0xeb40cb65, 0x3c1f, 0x4352, 0x9d, 0x7b, 0xba, 0xf, 0xc4, 0x7a, 0x9d, 0x77);

// {CE0F34EE-BBC6-11d2-941E-0000F8083460}
DEFINE_GUID(IID_IMDInternalDispenser, 0xce0f34ee, 0xbbc6, 0x11d2, 0x94, 0x1e, 0x0, 0x0, 0xf8, 0x8, 0x34, 0x60);

// {CE0F34ED-BBC6-11d2-941E-0000F8083460}
DEFINE_GUID(IID_IMDInternalImport, 0xce0f34ed, 0xbbc6, 0x11d2, 0x94, 0x1e, 0x0, 0x0, 0xf8, 0x8, 0x34, 0x60);

// {E03D7730-D7E3-11d2-8C0D-00C04FF7431A}
DEFINE_GUID(IID_IMDInternalImportENC, 0xe03d7730, 0xd7e3, 0x11d2, 0x8c, 0xd, 0x0, 0xc0, 0x4f, 0xf7, 0x43, 0x1a);

// {F102C526-38CB-49ed-9B5F-498816AE36E0}
DEFINE_GUID(IID_IMDInternalEmit, 0xf102c526, 0x38cb, 0x49ed, 0x9b, 0x5f, 0x49, 0x88, 0x16, 0xae, 0x36, 0xe0);

DEFINE_GUID(CLSID_HostMemoryManager_Remove, 0xe43a36f8, 0xc1c1, 0x42c2, 0xa9, 0x33, 0x59, 0x1f, 0x5a, 0x9a, 0xda, 0xcf);
DEFINE_GUID(CLSID_HostTaskManager_Remove, 0x375b686b, 0xf717, 0x4e1a, 0xbe, 0x49, 0xab, 0xc0, 0x5d, 0xbd, 0xe0, 0x19);
DEFINE_GUID(CLSID_HostThreadpoolManager_Remove, 0xce786bc2, 0x960f, 0x4807, 0x85, 0x2b, 0xee, 0xe, 0xdf, 0x5e, 0xd8, 0x10);
DEFINE_GUID(CLSID_HostSyncManager_Remove, 0x7b77c79a, 0xa6ad, 0x4314, 0xb9, 0x3, 0x52, 0xd9, 0xf5, 0x18, 0xf2, 0x42);
DEFINE_GUID(CLSID_HostCrossAssemblyCallManager_Remove, 0x39783185, 0xFE78, 0x11D6, 0x88, 0xEF, 0x50, 0x50, 0x54, 0x50, 0x30, 0x30);
DEFINE_GUID(CLSID_HostAssemblyManager_Remove, 0x613dabd7, 0x62b2, 0x493e, 0x9e, 0x65, 0xc1, 0xe3, 0x2a, 0x1e, 0x0c, 0x60);


// {4E9DB6FB-FF03-4398-9FCF-EAA0C55311AB}
DEFINE_GUID(LIBID_ALinkLib, 0x4e9db6fb, 0xff03, 0x4398, 0x9f, 0xcf, 0xea, 0xa0, 0xc5, 0x53, 0x11, 0xab);

// {F7E02368-A7F4-471f-8C5E-9839ED57CB5E}
// The Assembly Manifest Linker class
DEFINE_GUID(CLSID_AssemblyLinker, 0xf7e02368, 0xa7f4, 0x471f, 0x8c, 0x5e, 0x98, 0x39, 0xed, 0x57, 0xcb, 0x5e);

//-------------------------------------
//--- IALink
//-------------------------------------
//---
// {C8E77F39-3604-4fd4-85CF-38BDEB233AD4}
DEFINE_GUID(IID_IALink, 0xc8e77f39, 0x3604, 0x4fd4, 0x85, 0xcf, 0x38, 0xbd, 0xeb, 0x23, 0x3a, 0xd4);
// {C8E77F39-3604-4fd4-85CF-38BDEB233AD5}
DEFINE_GUID(IID_IALink2, 0xc8e77f39, 0x3604, 0x4fd4, 0x85, 0xcf, 0x38, 0xbd, 0xeb, 0x23, 0x3a, 0xd5);


//-------------------------------------
//--- eventtrace.h
//-------------------------------------

DEFINE_GUID ( /* 044973cd-251f-4dff-a3e9-9d6307286b05 */
    GCEventGuid,
    0x044973cd,
    0x251f,
    0x4dff,
    0xa3, 0xe9, 0x9d, 0x63, 0x07, 0x28, 0x6b, 0x05
  );

DEFINE_GUID ( /* cfc4ba53-fb42-4757-8b70-5f5d51fee2f4 */
    WorkerThreadCreateGuid,
    0xcfc4ba53,
    0xfb42,
    0x4757,
    0x8b, 0x70, 0x5f, 0x5d, 0x51, 0xfe, 0xe2, 0xf4
  );

DEFINE_GUID ( /* efdf1eac-1d5d-4e84-893a-19b80f692176 */
    WorkerThreadRetireGuid,
    0xefdf1eac,
    0x1d5d,
    0x4e84,
    0x89, 0x3a, 0x19, 0xb8, 0x0f, 0x69, 0x21, 0x76
  );

DEFINE_GUID ( /* c71408de-42cc-4f81-9c93-b8912abf2a0f */
    IOThreadCreateGuid,
    0xc71408de,
    0x42cc,
    0x4f81,
    0x9c, 0x93, 0xb8, 0x91, 0x2a, 0xbf, 0x2a, 0x0f
  );

DEFINE_GUID ( /* 840c8456-6457-4eb7-9cd0-d28f01c64f5e */
    IOThreadRetireGuid,
    0x840c8456,
    0x6457,
    0x4eb7,
    0x9c, 0xd0, 0xd2, 0x8f, 0x01, 0xc6, 0x4f, 0x5e
  );

DEFINE_GUID ( /* c424b3e3-2ae0-416e-a039-410c5d8e5f14 */
    ThreadpoolSuspendGuid,
    0xc424b3e3,
    0x2ae0,
    0x416e,
    0xa0, 0x39, 0x41, 0x0c, 0x5d, 0x8e, 0x5f, 0x14
  );

DEFINE_GUID ( /* 300ce105-86d1-41f8-b9d2-83fcbff32d99 */
    ExceptionGuid,
    0x300ce105,
    0x86d1,
    0x41f8,
    0xb9, 0xd2, 0x83, 0xfc, 0xbf, 0xf3, 0x2d, 0x99
  );

DEFINE_GUID ( /* 561410f5-a138-4ab3-945e-516483cddfbc */
    MonitorGuid,
    0x561410f5,
    0xa138,
    0x4ab3,
    0x94, 0x5e, 0x51, 0x64, 0x83, 0xcd, 0xdf, 0xbc
  );

DEFINE_GUID(// {02D08A4F-FD01-4538-989B-03E437B950F4}
    StartupGuid,
    0x2d08a4f,
    0xfd01,
    0x4538,
    0x98, 0x9b, 0x3, 0xe4, 0x37, 0xb9, 0x50, 0xf4);

//-------------------------------------
//--- sccomp
//-------------------------------------

DEFINE_GUID(IID_ICSPrivateNameTable, 0xa3b9b549, 0xf1c6, 0x478a, 0xa5, 0xe6, 0x2f, 0x7e, 0xf3, 0xb4, 0x56, 0x68);

DEFINE_GUID(guidNewEELang, 0xf89cfc7f, 0xf1c2, 0x429d, 0x9d, 0x6f, 0xe5, 0xe0, 0x7b, 0xfc, 0xa2, 0xf2);

DEFINE_GUID(guidManagedHost, 0xDA45D4A5, 0x38AA, 0x4248, 0x92, 0x46, 0x0D, 0xD7, 0x94, 0xFD, 0xA8, 0x80);

DEFINE_GUID(guidGetProxy, 0xeab02512, 0x9598, 0x44cd, 0x93, 0x85, 0x12, 0xc8, 0x10, 0x49, 0x5a, 0x47);

//-------------------------------------
//--- From isolation.h
//-------------------------------------

DEFINE_GUID(IID_IReferenceIdentity,0x6eaf5ace,0x7917,0x4f3c,0xb1,0x29,0xe0,0x46,0xa9,0x70,0x47,0x66);

DEFINE_GUID(IID_IEnumSTORE_ASSEMBLY,0xa5c637bf,0x6eaa,0x4e5f,0xb5,0x35,0x55,0x29,0x96,0x57,0xe3,0x3e);

DEFINE_GUID(IID_IStore,0xa5c62f6d,0x5e3e,0x4cd9,0xb3,0x45,0x6b,0x28,0x1d,0x7a,0x1d,0x1e);

DEFINE_GUID(IID_IMigrateStore,0xa5c6a738,0xfc6a,0x4204,0xb4,0xdb,0xb8,0x62,0x9b,0x67,0xe6,0x55);

DEFINE_GUID(IID_IDefinitionIdentity,0x587bf538,0x4d90,0x4a3c,0x9e,0xf1,0x58,0xa2,0x00,0xa8,0xa9,0xe7);

//-------------------------------------
//--- From IDL files
//-------------------------------------

#include "clrdata_i.c"
#include "cordebug_i.c"
#include "corffi_i.c"
#include "corprof_i.c"
#include "corpub_i.c"
#include "corsym_i.c"
#include "csiface_i.c"
#include "fusion_i.c"
#include "fusionpriv_i.c"
#include "gchost_i.c"
#include "ivalidator_i.c"
#include "ivehandler_i.c"
#include "mscoree_i.c"
#include "clrinternal_i.c"
#include "xclrdata_i.c"

// defined in mscoree.idl, but not in mscoree_i.c
DEFINE_GUID(CLSID_IHostIoCompletionManager_Remove, 0xB275390F, 0xF8EB, 0x4810, 0x95, 0x63, 0x75, 0x5D, 0x48, 0xD5, 0x8C, 0x52);

//-------------------------------------
//--- strike
//-------------------------------------

/* f2df5f53-071f-47bd-9de6-5734c3fed689 */
DEFINE_GUID(IID_IDebugAdvanced, 0xf2df5f53, 0x071f, 0x47bd,
            0x9d, 0xe6, 0x57, 0x34, 0xc3, 0xfe, 0xd6, 0x89);
/* 5bd9d474-5975-423a-b88b-65a8e7110e65 */
DEFINE_GUID(IID_IDebugBreakpoint, 0x5bd9d474, 0x5975, 0x423a,
            0xb8, 0x8b, 0x65, 0xa8, 0xe7, 0x11, 0x0e, 0x65);
/* 27fe5639-8407-4f47-8364-ee118fb08ac8 */
DEFINE_GUID(IID_IDebugClient, 0x27fe5639, 0x8407, 0x4f47,
            0x83, 0x64, 0xee, 0x11, 0x8f, 0xb0, 0x8a, 0xc8);
/* edbed635-372e-4dab-bbfe-ed0d2f63be81 */
DEFINE_GUID(IID_IDebugClient2, 0xedbed635, 0x372e, 0x4dab,
        0xbb, 0xfe, 0xed, 0x0d, 0x2f, 0x63, 0xbe, 0x81);
/* dd492d7f-71b8-4ad6-a8dc-1c887479ff91 */
DEFINE_GUID(IID_IDebugClient3, 0xdd492d7f, 0x71b8, 0x4ad6,
            0xa8, 0xdc, 0x1c, 0x88, 0x74, 0x79, 0xff, 0x91);
/* 5182e668-105e-416e-ad92-24ef800424ba */
DEFINE_GUID(IID_IDebugControl, 0x5182e668, 0x105e, 0x416e,
            0xad, 0x92, 0x24, 0xef, 0x80, 0x04, 0x24, 0xba);
/* d4366723-44df-4bed-8c7e-4c05424f4588 */
DEFINE_GUID(IID_IDebugControl2, 0xd4366723, 0x44df, 0x4bed,
            0x8c, 0x7e, 0x4c, 0x05, 0x42, 0x4f, 0x45, 0x88);
/* 88f7dfab-3ea7-4c3a-aefb-c4e8106173aa */
DEFINE_GUID(IID_IDebugDataSpaces, 0x88f7dfab, 0x3ea7, 0x4c3a,
            0xae, 0xfb, 0xc4, 0xe8, 0x10, 0x61, 0x73, 0xaa);
/* 7a5e852f-96e9-468f-ac1b-0b3addc4a049 */
DEFINE_GUID(IID_IDebugDataSpaces2, 0x7a5e852f, 0x96e9, 0x468f,
            0xac, 0x1b, 0x0b, 0x3a, 0xdd, 0xc4, 0xa0, 0x49);
/* 337be28b-5036-4d72-b6bf-c45fbb9f2eaa */
DEFINE_GUID(IID_IDebugEventCallbacks, 0x337be28b, 0x5036, 0x4d72,
            0xb6, 0xbf, 0xc4, 0x5f, 0xbb, 0x9f, 0x2e, 0xaa);
/* 9f50e42c-f136-499e-9a97-73036c94ed2d */
DEFINE_GUID(IID_IDebugInputCallbacks, 0x9f50e42c, 0xf136, 0x499e,
            0x9a, 0x97, 0x73, 0x03, 0x6c, 0x94, 0xed, 0x2d);
/* 4bf58045-d654-4c40-b0af-683090f356dc */
DEFINE_GUID(IID_IDebugOutputCallbacks, 0x4bf58045, 0xd654, 0x4c40,
            0xb0, 0xaf, 0x68, 0x30, 0x90, 0xf3, 0x56, 0xdc);
/* ce289126-9e84-45a7-937e-67bb18691493 */
DEFINE_GUID(IID_IDebugRegisters, 0xce289126, 0x9e84, 0x45a7,
            0x93, 0x7e, 0x67, 0xbb, 0x18, 0x69, 0x14, 0x93);
/* f2528316-0f1a-4431-aeed-11d096e1e2ab */
DEFINE_GUID(IID_IDebugSymbolGroup, 0xf2528316, 0x0f1a, 0x4431,
            0xae, 0xed, 0x11, 0xd0, 0x96, 0xe1, 0xe2, 0xab);
/* 8c31e98c-983a-48a5-9016-6fe5d667a950 */
DEFINE_GUID(IID_IDebugSymbols, 0x8c31e98c, 0x983a, 0x48a5,
            0x90, 0x16, 0x6f, 0xe5, 0xd6, 0x67, 0xa9, 0x50);
/* 3a707211-afdd-4495-ad4f-56fecdf8163f */
DEFINE_GUID(IID_IDebugSymbols2, 0x3a707211, 0xafdd, 0x4495,
            0xad, 0x4f, 0x56, 0xfe, 0xcd, 0xf8, 0x16, 0x3f);
/* 6b86fe2c-2c4f-4f0c-9da2-174311acc327 */
DEFINE_GUID(IID_IDebugSystemObjects, 0x6b86fe2c, 0x2c4f, 0x4f0c,
            0x9d, 0xa2, 0x17, 0x43, 0x11, 0xac, 0xc3, 0x27);
/* 0ae9f5ff-1852-4679-b055-494bee6407ee */
DEFINE_GUID(IID_IDebugSystemObjects2, 0x0ae9f5ff, 0x1852, 0x4679,
            0xb0, 0x55, 0x49, 0x4b, 0xee, 0x64, 0x07, 0xee);

//-------------------------------------
//--- ILDB
//-------------------------------------

DEFINE_GUID(ILDB_VERSION_GUID_FSR, 0xCB2F6723, 0xAB3A, 0x11d, 0x9C, 0x40, 0x00, 0xC0, 0x4F, 0xA3, 0x0A, 0x3E);

DEFINE_GUID(ILDB_VERSION_GUID, 0x9e02e5b6, 0x8aef, 0x4d06, 0x82, 0xe8, 0xe, 0x9b, 0x45, 0x49, 0x97, 0x16);




